// pages/login/binding/binding.js
import { validate } from '../../../../../utils/validate.js'
import { axios } from '../../../../../utils/ajax.js'
Page({

    /**
     * 页面的初始数据
     */
    data: {
        //用户填写的手机号
        telphone: '',
        //手机号码是否存在
        exists: false,
        time: '59s后重发',
        //验证码是否正在发送
        iscodeing: false

    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {

    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    },
    //提交信息
    confirm(e) {
        console.log(e.detail.value)
        let obj = {
            tel: e.detail.value.tel
        }
        if (validate(obj)) {
            if (!e.detail.value.idcode) {
                wx.showToast({
                    title: '请填写短信验证码',
                    icon: 'none'
                })
                //可以登录了 login获取code换取userid token
            } else {
                wx.login({
                    success: (res) => {
                        console.log(res.code)
                        axios({
                            url: '/user/binding',
                            data: {
                                code: res.code,
                                tel: e.detail.value.tel,
                                smsCode: e.detail.value.idcode,
                                password: e.detail.value.psd
                            }
                        }).then(res => {
                            console.log(res)
                            //设置用户缓存
                            wx.setStorage({
                                key: "userinfo",
                                data: {
                                    userid: res.data.userid,
                                    token: res.data.token
                                }
                            })
                            
                            wx.navigateBack({
                                delta: 2
                            })
                        })
                    }
                })
            }
        }
    },
    //获取验证码
    getcode() {
        //正在发送验证码 防止多次点击
        if (!this.data.iscodeing) {
            let telphone = this.data.telphone
            let obj = {
                tel: telphone
            }
            //手机号填写正确
            if (validate(obj)) {
                //获取短信验证码
                wx.login({
                    success: (res) => {
                        console.log(res.code)
                        axios({
                            url: '/user/getCode',
                            data: {
                                tel: telphone,
                                type: 3,
                                code: res.code
                            }
                        }).then((res) => {
                            console.log(res)
                            wx.showToast({
                                title: res.data.message,
                                icon: 'none'
                            })

                            //倒计时
                            this.setData({
                                iscodeing: true
                            })
                            let seconds = 59;
                            let countdown = setInterval(() => {
                                --seconds
                                if (seconds >= 0) {
                                    this.setData({
                                        time: seconds + 's后重发'
                                    })
                                } else {
                                    clearInterval(countdown)
                                    this.setData({
                                      time: '59s后重发',
                                      iscodeing: false
                                    })
                                }
                            }, 1000)
                        })
                    }
                })
            }
        }
    },
    //输入手机号
    inputtel(e) {
        this.setData({
            telphone: e.detail.value
        })
    }
})